package modele;

import java.rmi.RemoteException;

public class SoutienDefensif extends Soutien {

	public SoutienDefensif(Puissance commanditaire, String typeU, Region regOr, Region regDes)
			throws RemoteException {
		super(commanditaire, typeU, regOr, regDes);
	}

	@Override
	public String getTypeOrdre() {
		return "Soutien Defensif";
	}

	public String toString() {
		return "Ordre de " + getTypeOrdre() + " de la puissance " + super.getCommanditaire()
				+ " avec une unite de type " + super.getTypeUnite() + "Origine : "
				+ super.getRegOrigine() + " Region soutenu : " + super.getRegDestination();
	}

	@Override
	public boolean verifValidite() {
		// FR F STG S GRO
		// Si la region soutenu possede une unite (-> Unite sur GRO)
		if (super.getRegionSoutenu().getOccupant() != null) {
			// Si region et region soutenu frontalier
			if (super.getRegOrigine().isFrontalier(super.getRegionSoutenu())) {
				// Terrestre ne peut pas soutenir marrin
				if (super.getRegOrigine().isTerrestre() && !super.getRegionSoutenu().isTerrestre()) {
					return false;
				}
				return true;
			}
		}
		return false;
	}

}
